// import operation from "./operation"
let utils = data["utils"];
let STUtil = data["STUtil"];
let Node = data["Node"];
let SplayTree = data["SplayTree"];
let isInBbox = data["isInBbox"];
let getBboxOverlap = data["getBboxOverlap"];
let cmp = data["cmp"];
let rounder = data["rounder"];
let geomIn = data["geomIn"];
let geomOut = data["geomOut"];
let operation = data["operation"];
let Segment = data["Segment"];
let SweepEvent = data["SweepEvent"];
let SweepLine = data["SweepLine"];
console.log("15PolygonClipping_index");
const unionTemp = function (geom, ...moreGeoms) {
  return operation.run("union", geom, moreGeoms)
}

const intersectionTemp = function (geom, ...moreGeoms) {
  return operation.run("intersection", geom, moreGeoms)
}


const xorTemp = function (geom, ...moreGeoms) {
  return operation.run("xor", geom, moreGeoms);
}

const differenceTemp = function (subjectGeom, ...clippingGeoms) {
  return operation.run("difference", subjectGeom, clippingGeoms)
}

var polygonClipping = {
  union: unionTemp,
  intersection: intersectionTemp,
  xor: xorTemp,
  difference: differenceTemp
}
return {
  "utils": utils,
  "STUtil": STUtil,
  "Node": Node,
  "SplayTree": SplayTree,
  "isInBbox": isInBbox,
  "getBboxOverlap": getBboxOverlap,
  "cmp": cmp,
  "rounder": rounder,
  "geomIn": geomIn,
  "geomOut": geomOut,
  "operation": operation,
  "Segment": Segment,
  "SweepEvent": SweepEvent,
  "SweepLine": SweepLine,
  "polygonClipping": polygonClipping
}